Aspect-oriented workflow languages: AO4BPEL and applications

نویسنده

  • Anis Charfi
چکیده

This thesis focuses on the modularity of workflow process specifications. In particular, it studies the expression support for crosscutting concerns and workflow changes in current workflow languages and workflow management systems. To illustrate the issues, two workflow languages are considered: a visual graphbased language and the Web Service composition language BPEL. This thesis starts by describing the implementation of several crosscutting concerns such as data collection for billing, activity execution time measurement, and security in typical processes of a travel agency. When examining the resulting workflow specifications, the following observations are made. First, the workflow constructs that implement a crosscutting concern cannot be encapsulated in a separate module with a well-defined interface. They are rather scattered across the specifications of several workflow processes. Second, the workflow specifications that result after adding the implementation of a crosscutting concern are tangled. That is, the workflow constructs that implement the business logic are intertwined with the workflow constructs that implement the other concerns. This leads to monolithic and complex workflow process specifications that are hard to understand, reuse, maintain, and evolve. Moreover, this thesis studies the expression of workflow changes such as adding business logic to a travel process to search for a rental car, or replacing a partner service. Thereby, the following observations are made. In static workflow management systems such as BPEL-based ones, the workflow constructs that implement a workflow change must be integrated directly in the specifications of the workflow processes that are affected by that change. There is no module concept for encapsulating these constructs and expressing the workflow change as a separate first-class entity. In adaptive workflow management systems, the same problems exist because these systems also lack a module concept for encapsulating workflow changes and expressing them as separate first-class entities. This makes understanding, tracing, and managing workflow changes difficult. The modularity problems mentioned so far are due to the lack of appropriate decomposition mechanisms in current workflow languages. To solve these problems, a concern-based decomposition of workflow specifications is proposed. This decomposition technique is incorporated in a new type of workflow languages that are called aspect-oriented workflow languages. These languages introduce concepts from Aspect-Oriented Software Development such as aspects and pointcuts to the domains of workflow modeling and workflow specification. At the workflow modeling level, this thesis extends the graph-based language that was mentioned earlier with new constructs that graphically represent aspect-oriented concepts such as pointcuts, advice, and aspects. The resulting extension, which is called aspectual workflow graphs, illustrates the concepts of aspect-oriented workflow languages in a simple way independently of any specific workflow language. At the workflow specification level, this thesis presents requirements to aspect-oriented workflow languages and the core concepts of such languages. In particular, the join point models, the pointcut languages, the advice languages, and the composition mechanisms of aspects and processes will be discussed. Moreover, this thesis introduces a specific aspect-oriented workflow language for Web Service composition called AO4BPEL. The design and implementation of AO4BPEL can be considered as a proof-of-concept for aspect-oriented workflow languages. This thesis shows using examples how workflow aspects support a better modularization of crosscutting concerns and workflow changes. Moreover, AO4BPEL aspects increase the flexibility and adaptability of BPEL processes, as they can be used to modify BPEL processes at runtime. In addition, this thesis presents two applications of AO4BPEL to show the value and usefulness of aspect-oriented workflow languages. In the first application, a process container framework for providing middleware support to BPEL processes is proposed. In this framework, the nonfunctional requirements of the process activities such as security, reliable messaging, and transactions are specified declaratively using a deployment descriptor. These requirements are enforced using a process container that is inspired by enterprise component models. The process container is implemented as a light-weight and extensible container using a set of AO4BPEL aspects that are generated automatically from the deployment descriptor. The container calls middleware Web Services to enforce non-functional requirements such as security, reliable messaging, and transactions. These Web Services are implemented by extending Open Source implementations of WS-* specifications such as WSSecurity and WS-AtomicTransaction. In the second application, a hybrid approach to Web Service composition is introduced. This approach separates the implementation of the business rules from the BPEL process according to the principles of the Business Rules Approach. At the implementation level, AO4BPEL aspects are used to implement all types of business rules in a separate and modular way.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Aspect-Oriented Workflow Languages

Most available aspect-oriented languages today are extensions to programming languages. However, aspect-orientation, which is a paradigm for decomposition and modularization, is not only applicable in that context. In this paper, we introduce aspect-oriented software development concepts to workflow languages in order to improve the modularity of workflow process specifications with respect to ...

متن کامل

Aspect-Oriented Web Service Composition with AO4BPEL

Web services have become a universal technology for integration of distributed and heterogeneous applications over the Internet. Many recent proposals such as the Business Process Modeling Language (BPML) and the Business Process Execution Language for Web Services (BPEL4WS) focus on combining existing web services into more sophisticated web services. However, these standards exhibit some limi...

متن کامل

Detection and Resolution of Aspect Interactions in Workflows

Workflow systems have become a popular means of automating processes in many domains. Current workflow languages, however, provide only limited modularization mechanisms, and thus suffer from a lack of separation of concerns. Inspired by aspect-oriented research, several extensions to workflow languages have been developed which allow modularizing workflow concerns into separate aspects. Unfort...

متن کامل

Uniform Modularization of Workflow Concerns Using Unify

Workflow management systems have become a widely accepted technique for automating processes in many domains. A workflow is created by dividing a process into different activities, and specifying the ordering in which these activities need to be performed. This ordering is called the control flow perspective. Current workflow languages allow natively expressing a multitude of control flow patte...

متن کامل

Foundations of Aspect Oriented Business Process Management

Reducing complexity in Information Systems is a main concern in both research and industry. One strategy for reducing complexity is separation of concerns. This strategy advocates separating various concerns, like security and privacy, from the main concern. It results in less complex, easily maintainable, and more reusable Information Systems. Separation of concerns is addressed through the As...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007